Modelling Multi-Facetted Purposes of Artefacts
نویسنده
چکیده
Whereas software variability deals with customisation and adaptability of software, we consider here the issue of modelling variability for Information System artefacts. We view variability in the larger perspective of the system meeting the purpose of many organisations and customer groups. We propose to represent this multi-facetted nature of a purpose through the notion of intentions and strategies organised as a map. The map is a directed, labelled, non-deterministic graph with intentions as nodes, and strategies to achieve intentions, as edges. Its nature allows the capture of different forms of variability through multiedges between a pair of nodes thereby enabling many traversals of the graph from beginning to end. Besides, using the refinement mechanism of the map, it is possible to represent variability at different levels of detail. We show the power of a map to represent variability and, as an illustration, model the variations of the SAP Materials module as a map. INTRODUCTION Propelled by the failure of systems to meet user expectations, there has been a gathering trend to build ever more purposeful systems, those that achieve specific objectives of organisations. Goal modelling had its early beginnings in 1970s in the definition study of Hice and Turner [Hice74] and context analysis of [Ross77]. It was used in participative analysis in 1980s [Munford81] and was found in a few Object-oriented methodologies of the 1990s [Rubin92] but really came into its own in Requirements Engineering in the last decade. Goal modelling is used in RE [Dardenne93], [Anton98], [Kaindl00], [Rolland98], [Lamsweerde01], [Chung00] to elicit IS requirements that capture the strategic, high level, goals of an enterprise. By linking the rationale behind the system (the why) and the functional as well as non-functional requirements (the what) goal modelling is helpful in building more purposeful products. In recent years, a new context in which IS products are developed has emerged. Whereas earlier, an IS product met the purpose of a single organisation and of a single set of customers, a product of today must be conceived in a larger perspective, to meet the purpose of several organisations and to be adaptable to different usage situations/customer sets. The former is typical of an ERP-like development situation whereas the latter is the concern of product-l ine development [Svahnberg01], [Bosh01] and adaptable software [Hui03]. In the software community, this leads to the notion of software variability which is defined as the ability of a software system to be changed, customised or configured to a specific context [Van Gurp00]. We believe that variability suggests a move from systems with a monofacetted purpose to those with a multi-facetted purpose. Whereas the former concentrates on goal discovery, the multi-facetted nature of a purpose extends it to consider the many different ways of goal achievement. For example, for the goal Purchase Material, earlier it would be enough to know that an organisation achieves this goal by forecasting material need. Purchase material is mono-facetted: it has exactly one strategy for its achievement. However, in the new context, it is necessary to introduce other strategies as well, say the Reorder Point strategy for purchasing material. Purchase Material now is multifacetted, it has many strategies for goal achievement. These two strategies, among others, are made available in the SAP Materials Management module. In this paper, we suggest that to model the multi-facetted purpose of an IS product there is a need to balance goal-orientation with the introduction of strategies for goal achievement. We use a formalism, the Map [Rolland99], for the representation of multi-facetted purposes. A map is a graph, with nodes as intentions and strategies as edges. An edge entering a node identifies a strategy that can be used for achieving the intention of the node. The map therefore, shows which intentions can be achieved by which strategies once a preceding intention has been achieved. Evidently, the map is capable of expressing goals and their achievement in a declarative manner. In [Rolland99], we developed the Map as a means for representation of multi-models, a set of process models. A particular path from its START node to its END node was shown to be a process model. Our interest now is to view the Map in another way, as a means for capturing variability. This variability is not to be seen from the process perspective but from the product perspective: how do you specify the multi-facets of a product. The rest of the paper is organised as follows. In section 2 we present how the MAP formalism allows us to represent variability and illustrate it in section 3 with variability in the SAP Material Management Module. Conclusions are drawn in section 4. KEY CONCEPTS OF THE MAP In this section we introduce the key concepts of a map and their relationships and bring out their relevance to model multi-facetted purposes. A map provides a representation of a multi-facetted purpose based on a non-deterministic ordering of intentions and strategies. The key concepts of the map and their inter-relationships are shown in the map meta-model of Figure 1 which is drawn using UML notations. • A map is composed of several sections. A section is an aggregation of two kinds of intentions, source and target, linked together by a strategy. • An intention is a goal, ‘an optative’ statement [Jackson95] that expresses what is wanted i.e. a state that is expected to be reached or maintained. Make Room Booking is an intention to make a reservation for rooms in a hotel. The achievement of this intention leaves the system in the state, Booking made. Each map has two special intentions, Start and Stop, associated with the initial and final states respectively. • A strategy is an approach, a manner, a means to achieve an intention. Let us assume that bookings can be made on the Internet. This is a means of achieving the Make Room Booking intention, 701 E. Chocolate Avenue, Suite 200, Hershey PA 17033, USA Tel: 717/533-8845; Fax 717/533-8661; URL-http://www.idea-group.com ITP5214 IDEA GROUP PUBLISHING This paper appears in Managing Modern Organizations Through Information Technology, Proceedings of the 2005 Information Resources Management Association International Conference, edited by Mehdi Khosrow-Pour. Copyright 2005, Idea Group Inc. 412 2005 IRMA International Conference Copyright © 2005, Idea Group Inc. Copying or distributing in print or electronic forms without written permission of Idea Group Inc. is prohibited. and is a strategy. by visiting a travel agency is another strategy to achieve the same intention. • A section is an aggregation of the source intention, the target intention, and a strategy. As shown in Figure 1 it is a triplet . A section expresses the strategy S source-target using which, starting from I source , I target can be achieved. The triplet is a section; similarly constitutes another section. A section is the basic construct of a map which itself can be seen as an assembly of sections. When a map is used to model a multi-facetted purpose, each of its sections represents a facet. The set of sections model the purpose in its totality and we will see below that the relationships between sections and between a section and a map lead to the representation of the multi-facetted perspective. A map is drawn as a directed graph from Start to Stop. Intentions are represented as nodes of the graph and strategies as edges between these. The graph is directed because the strategy shows the flow from the source to the target intention (Figure 3). • Section relationships: There are three relationships between sections (Fig.1) namely the thread, path and bundle which generate multi-thread and multi-path topologies in a map. • Thread relationship: It is possible for a target intention to be achieved from a source intention in many different ways. Each of these ways is expressed as a section in the map. Such a map topology is called a multi-thread and the sections participating in the multithread are said to be in a thread relationship with one another. Assume that Accept Payment is another intention in our example and that it can be achieved in two different ways, By electronic transfer or By credit card. This leads to a thread relationship between the two sections shown in Figure 2. It is clear that a thread relationship between two sections regarded as facets represents directly the variability associated to a multi-facetted purpose. Multi-faceting is captured in the different strategies to achieve the common target intention. • Path relationship: This establishes a precedence/succedence relationship between sections. For a section to succeed another, its source intention must be the target intention of the preceding one. For example the two sections , form a path. From the point of view of modelling facets, the path introduces a composite facet whereas the section based facet is atomic. Given the thread and the path relationships, an intention can be achieved by several combinations of sections. Such a topology is called a multipath. In general, a map from its Start to its Stop intentions is a multipath and may contain multi-threads. Let us assume in our example that it is possible to Stop either because a customer retracts from making the booking (By customer retraction) or after payment (Normally). Figure 3 shows the entire map with the purpose to Make Confirmed Booking. This map contains 6 paths from Start to Stop out of which two are highlighted in the Figure 3. Clearly, the multi-path topology is yet another way of representing the multi-facetted perspective. Multi-faceting in this case is obtained by combining various sections together to achieve a given intention of the map. Consider for instance the intention Accept payment in Figure 4; there are four paths from Start to achieve it; each of them is a different way to get the intention achieved and in this sense, participates to the multi-faceting. Each path is a composite facet composed of two atomic facets. This can be extended to the full map which can be seen as composed of a number of paths from Start to Stop. This time these paths introduce multi-faceting but to achieve the intention of the map which in our example, is Make Confirmed Booking. • Bundle relationship: Several sections having the same pair which are mutually exclusive are in a bundle relationship. The group of these sections constitutes a bundle. Notice that the difference between a thread and bundle relationship is the exclusive OR of sections in the latter versus an OR in the former. • Refinement relationship: Figure 1 also shows that a section of a map can be refined as another map through the refinement relationship. The entire refined map then represents the section as shown in Figure 5. Refinement is an abstraction mechanism by which a complex assembly of sections at level i+1 is viewed as a unique section at level i. As a result of refinement, a section at level i is represented by multiple paths & multiple threads at level i+1. From the point of view of multi-faceting, refinement allows to look to the multi-facetted nature of a facet. It introduces levels in the representation of the multi-facetted purpose which is thus, completely modelled through a hierarchy of maps.
منابع مشابه
Perspectives on the scope and definition process of the Unified Enterprise Modelling Language
Interoperability of Enterprise Applications is a serious and multi-facetted problem. One of the tasks of the recently-started INTEROP Network of Excellence is to address this problem at the modelling level through the elaboration of a Unified Enterprise Modelling Language (UEML). In this paper, some methodological hints and an embryonic mission statement are submitted to discussion with peers.
متن کاملModelling Diffraction by Facetted Particles
A method to approximate azimuthally resolved light scattering patterns and phase functions due to diffraction and external reflection by strongly absorbing facetted particles is demonstrated for a cube and compared with results from an exact method, T-matrix. A phase function averaged over a range of orientations of a strongly absorbing hexagonal column of aspect ratio unity has been calculated...
متن کاملHow do models give us knowledge? The case of Carnot’s ideal heat engine
Our concern is in explaining how and why models give us useful knowledge. We argue that if we are to understand how models function in the actual scientific practice the representational approach to models proves either misleading or too minimal. We propose turning from the representational approach to the artefactual, which implies also a new unit of analysis: the activity of modelling. Modell...
متن کاملContext-driven Business Process Modelling
Business professionals create business process models in order to get an understanding of who is involved and which resources are needed for the execution of a business process. Such business process models are required as a basis for knowledge transfer, quality purposes, regulations, communication between internal and external collaborative partners, or documentation in general. Current proces...
متن کاملUsing Conceptual Models in Research Methods Courses: An experience using iStar 2.0
Conceptual modelling languages are typically taught in graduate and postgraduate information systems programs. In the specific case of postgraduate information systems students, the lecturer has the opportunity to exploit conceptual modelling for educational purposes that go beyond learning how to apply the modelling paradigm or specific languages. In this paper, we report on our employment of ...
متن کامل